package com.yj.blog.admin.dao;

import com.yj.blog.model.SysResource;
import com.yj.blog.model.SysRole;
import com.yj.blog.model.SysUser;
import com.yj.blog.model.SysUserRoleRelation;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 后台用户与角色关系管理自定义Dao
 */
public interface SysUserRoleRelationDao {
    /**
     * 批量插入用户角色关系
     */
    int insertList(@Param("list") List<SysUserRoleRelation> userRoleRelationList);

    /**
     * 获取用于所有角色
     */
    List<SysRole> getRoleList(@Param("userId") Long userId);

    /**
     * 获取用户所有可访问资源
     */
    List<SysResource> getResourceList(@Param("userId") Long userId);

    /**
     * 获取资源相关用户ID列表
     */
    List<Long> getUserIdList(@Param("resourceId") Long resourceId);
}
